1. Field of the Invention
The present invention relates to an information processing, more specifically, an apparatus which updates the version of software, system, method and storage medium storing program thereof.
2. Description of the Related Art
A system which remotely manages the operating state of the peripheral device of an information processing apparatus has been widely used. A system which uses an image forming apparatus as an information processing apparatus updates the firmware of the image forming apparatus as follows. When firmware needs to be upgraded, or updated owing to any reason such as a fault, a serviceman visits a customer and manually updates the firmware. For example, all firmware modules must be stored in the ROM of a printer. To update the firmware, the serviceman must do special work to exchange the ROM or rewrite a built-in flash memory or EEPROM. This raises the cost to update firmware. To solve this problem, it has become popular recently to update firmware by storing it in a rewritable storage device such as a flash memory and distributing it via the Internet by using e-mail or the like.
A function of distributing firmware, an application, or the like to an image forming apparatus, and remotely upgrading the firmware of the image forming apparatus is known as one function of a distribution server. Current image forming apparatuses use a nonvolatile memory for holding operation settings and the like in the firmware of the image forming apparatus. When storing operation settings and the like in the nonvolatile memory, an area used for each of firmware modules of the image forming apparatus is generally assigned as a memory map in advance. In accordance with the memory map, operation settings and the like are read out/written from/in the area of each firmware of the image forming apparatus.
When firmware of the image forming apparatus is upgraded, the memory map of the nonvolatile memory sometimes changes upon addition/deletion of the configuration firmware or a change of specifications. In general, when activating upgraded firmware, the nonvolatile memory is automatically initialized to safely activate it. In this case, however, operation settings and the like held in the nonvolatile memory are also initialized, so the address book, user mode/service mode settings, and job information are also initialized. Conventionally, mapping information which is held in the memory and represents the addresses of operation settings and the like is not particularly associated with the version of firmware. Hence, at the site, the serviceman checks address information of operation settings and the like immediately before upgrading, and temporarily saves it outside the image forming apparatus. After upgrading, the serviceman writes back the saved settings, thereby preventing the above-mentioned initialization of operation settings and the like.
Conventionally, the serviceman determines whether it is necessary to save operation setting information and the like in the nonvolatile memory. It is highly likely that the serviceman erroneously initializes operation settings owing to a determination error, or always performs unnecessary save work for safety. A new technique is required to safely achieve upgrading without performing field work as much as possible.
Japanese Patent Laid-Open No. 2001-67228 discloses a download method of holding some or all firmware modules of a printer in a host PC. According to this method, every time print processing is done, the printer driver compares the state of firmware running in the printer with firmware requested by an application, and downloads only necessary modules to the printer. However, Japanese Patent Laid-Open No. 2001-67228 does not particularly describe an improvement of convenience for saving operation setting information and the like when updating firmware.